python世界中形影不离的一对情侣
文末附有项目代码可供下载
input函数
input()是从控制台获取用户输入的信息,不论用户输入的是什么,input()都会返回字符串类型。 <变量> = input(<提示性文字>)
a = input("请输入你的年龄:")
print(type(a))
Run and output!
请输入你的年龄:25
<class 'str'>
我们看到当我们运行代码时,我们输入的是数字,但是返回的数据类型是字符串。这点要注意哦!
eval函数
eval()可以将字符串类型转化成python对象。具体我们看下面的例子
print(eval("25"))
print(type(eval("25")))
Run and output!
25
<class 'int'>
可见eval将字符串转化为python中的整型数据类型。eval实际上能将字符串转化为任意的python对象,如变量名、函数名等。我们继续看几个例子
转化为变量名
eval将字符串转化为python里的变量
sentence = 'python is very easy to learn!'
eval('sentence')
Run and output!
'python is very easy to learn!'
#### 转化为函数名
def hello():
print('hello world!')
eval('hello')
Run and output!
<function __main__.hello()>
不要奇怪哦,因为上面的eval('hello')等同于hello,但是我们调用函数时候一定要加上括号。
eval('hello')()
Run and output!
hello world!
input与eval
实际上eval()与input()很像一对情侣,在python世界中形影不离。input用来获取用户输入的数据,而eval将输入的数据转化成python对象。
a = input('请输入一个列表:')
print(type(a))
print(type(eval(a)))
Run and output!
请输入一个列表:[1,2,3,4]
<class 'str'>
<class 'list'>
从图中我们看到,我们输入的列表经过input函数变成了字符串。为了在python程序中继续使用a的列表特性,我们必须使用eval将再转化为python列表对象。同理eval还可以将字符串转化为字典、元组、集合等python对象,这里就不一一做讲解了。
往期文章
【工具篇】如何用Google Colab高效的学习Python
公号后台回复 20190310 ,即可获得本项目代码和咪蒙数据
内容值不了多少钱,希望能值得您的一个肯定